MTM2: Scalable Memory Management for Multi-tasking Managed Runtime Environments
نویسندگان
چکیده
Multi-tasking, managed runtime environments (MREs) for modern type-safe, object-oriented programming languages enable isolated, concurrent execution of multiple applications within a single operating system process. Multi-tasking MREs can potentially extract high-performance on modern desktop and hand-held systems through aggressive sharing of classes and compiled code, and by exploiting high-level dynamic program information for optimization across program executions. In this paper, we investigate the performance of a state-of-the-art multi-taking MRE for concurrent program execution and find that due to limited support for multi-tasking and performance isolation in the memory management subsystem, multi-tasking performs poorly compared to a production-quality, singletasking MRE. To address this limitation, we present MTM: a comprehensive memory management system for concurrent multi-tasking. MTM facilitates performance isolation and efficient heap space usage through on-demand allocation of application-private regions. Moreover, MTM mitigates fragmentation using a novel hybrid garbage collector that combines mark-sweep with opportunistic copying. Our empirical evaluation shows that MTM improves overall performance, scalability, and footprint for concurrent workloads over state-of-the-art, multiand single-tasking MREs.
منابع مشابه
Memory Management for Multi-Application Managed Runtime Environments
Memory Management for Multi-Application Managed Runtime Environments
متن کاملMulti-objective and Scalable Heuristic Algorithm for Workflow Task Scheduling in Utility Grids
To use services transparently in a distributed environment, the Utility Grids develop a cyber-infrastructure. The parameters of the Quality of Service such as the allocation-cost and makespan have to be dealt with in order to schedule workflow application tasks in the Utility Grids. Optimization of both target parameters above is a challenge in a distributed environment and may conflict one an...
متن کاملScalable Publish-Subscribe in a Managed Framework
Scalable Publish-Subscribe in a Managed Framework Krzysztof Ostrowski Cornell University Ken Birman Cornell University Abstract Reliable multicast, publish-subscribe and group communication are highly effective in support of replication and event notification, and could serve as the enabling technologies for new types of applications that are both interactive and decentralized. To fully realize...
متن کاملImplementing Scalable Publish-Subscribe in a Managed Runtime Environment
The reliable multicast, publish-subscribe, and group communication paradigms are highly effective in support of replication and event notification, and could serve as the enabling technologies for new types of applications that are both interactive and decentralized. To fully realize this vision, we need a high-performance, scalable, and reliable multicast engine, as an integral part of the run...
متن کاملScalable Multi-Tasking using Preemption Thresholds
Preemptive multi-tasking is a commonly used architecture for designing and implementing embedded real-time software. However, preemptive multi-tasking comes with its own costs. These costs include overheads due to preemptions and context-switches that result in waste of CPU bandwidth. Also, each task incurs a memory cost largely due to the need to maintain a separate stack for each task. These ...
متن کامل